1.4 Numpy数组转换
实现中需要将dataFrame表格和Series数据转为数组,dataFrame数据表格,再分别使用np.array()函数,df.to_numpy()函数,df.value属性。
1.4.1导入数据(数据形式)
import pandas as pd,numpy as np
path=r "D:\Pyobject2023\object\测试\素材\1.1.4 Numpy数组转换.xlsx"
df=pd.read_excel (path)
print (df)
返回:
姓名 | 入职日期 | 基础工资 | |
---|---|---|---|
0 | 张三 | 2023-11-01 | 1000 |
1 | 李四 | 2020-01-01 | 2050 |
2 | 王五 | 2021-07-07 | 3041 |
1.4.2导入数据(数组形式)
import pandas as pd,numpy as np
path= r "D:\Pyobject2023\object\测试\素材\1.1.4 Numpy数组转换.xlsx"
df=pd.read_excel (path)
print (np.array(df))
返回:
[['张三' Timestamp('2023-11-01 00:00:00') 1000]
['李四' Timestamp('2020-01-01 00:00:00') 2050]
['王五' Timestamp('2021-07-07 00:00:00') 3041]]
import pandas as pd,numpy as np
path= r "D:\Pyobject2023\object\测试\素材\1.1.4 Numpy数组转换.xlsx"
df=pd.read_excel (path)
print (df.to_numpy()) #等同上面转成数组
返回:
[['张三' Timestamp('2023-11-01 00:00:00') 1000]
['李四' Timestamp('2020-01-01 00:00:00') 2050]
['王五' Timestamp('2021-07-07 00:00:00') 3041]]
import pandas as pd,numpy as np
path=r "D:\Pyobject2023\object\测试\素材\1.1.4 Numpy数组转换.xlsx"
df=pd.read_excel (path)
print (df.values) #等同上面转成数组
返回:
[['张三' Timestamp('2023-11-01 00:00:00') 1000]
['李四' Timestamp('2020-01-01 00:00:00') 2050]
['王五' Timestamp('2021-07-07 00:00:00') 3041]]
1.4.3导入数据(series形式)
import pandas as pd,numpy as np
path= r "D:\Pyobject2023\object\测试\素材\1.1.4 Numpy数组转换.xlsx"
df=pd.read_excel (path)
for i,s in df.items(): #写入标题,即第一行数据
print (i)
返回:
姓名
入职日期
基础工资
import pandas as pd,numpy as np
path=r "D:\Pyobject2023\object\测试\素材\1.1.4 Numpy数组转换.xlsx"
df=pd.read_excel (path)
for i,s in df.items(): #分列写入数据
print (s)
返回:
0 张三
1 李四
2 王五
Name: 姓名, dtype: object
0 2023-11-01
1 2020-01-01
2 2021-07-07
Name: 入职日期, dtype: datetime64[ns]
0 1000
1 2050
2 3041
Name: 基础工资, dtype: int64
import pandas as pd,numpy as np
path=r "D:\Pyobject2023\object\测试\素材\1.1.4 Numpy数组转换.xlsx"
df=pd.read_excel (path)
for i,s in df.items()
print (np.array(s)) #分列写入数组
返回:
['张三' '李四' '王五']
['2023-11-01T00:00:00.000000000' '2020-01-01T00:00:00.000000000' '2021-07-07T00:00:00.000000000']
[1000 2050 3041]